﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using SRD.Model.SRD.DTO;
using SRD.Model.SRD.Util;
using System.Data.SqlClient;
using System.Data;
using System.Collections;
using System.Web.UI.WebControls;
using System.Configuration;

namespace SRD.Model.SRD.DAO
{
    class EnderecoEmpresaDAO
    {
        public Boolean inserirEnderecoEmpresa(EnderecoEmpresaDTO endereco)
        {
            SqlCommand cmd = new SqlCommand("insert into ENDERECO_EMPRESA(LOUGRADOURO, NUMERO, COMPLEMENTO, BAIRRO, CEP) values (@lougradouro, @numero, @complemento, @bairro, @cep);", Conexao.getConexao());
            try
            {

                Conexao.getConexao().Open();


                cmd.Parameters.Add("@lougradouro", SqlDbType.NVarChar ).Value = endereco.lougradouro;
                cmd.Parameters.Add("@numero", SqlDbType.NVarChar).Value = endereco.numero;
                cmd.Parameters.Add("@complemento", SqlDbType.NVarChar).Value = endereco.complemento;
                cmd.Parameters.Add("@bairro", SqlDbType.NVarChar).Value = endereco.bairro;
                cmd.Parameters.Add("@cep", SqlDbType.Int).Value = endereco.cep;
                cmd.ExecuteNonQuery();
                return true;
            }
            catch (Exception)
            {
                return false;
            }
            finally
            {
                Conexao.getConexao().Close();
            }
        }

        public DataSet getEnderecoEmpresa(int empresaId)
        {

            try
            {
                Conexao.getConexao().Open();
                SqlCommand cmd = new SqlCommand("Select * from ENDERECO_EMPRESA where EMPRESA_ID = @empresaId", Conexao.getConexao());
                cmd.Parameters.Add("@empresaId", SqlDbType.Int).Value = empresaId;
                SqlDataAdapter da = new SqlDataAdapter(cmd);
                DataSet DT = new DataSet();
                da.Fill(DT, "ENDERECO_EMPRESA");
                DataSet retorno = DT;
                return retorno;
            }
            finally
            {
                Conexao.getConexao().Close();
            }


        }

        public Boolean alterarEnderecoEmpresa(EnderecoEmpresaDTO endereco)
        {
            SqlCommand cmd = new SqlCommand("UPDATE ENDERECO_EMPRESA SET LOUGRADOURO = @lougradouro, NUMERO = @numero, COMPLEMENTO = @complemento, BAIRRO = @bairro, CEP = @cep WHERE (ENDERECO_EMPRESA_ID = @enderecoEmpresaId)", Conexao.getConexao());

            try
            {
                Conexao.getConexao().Open();
                cmd.Parameters.Add("@lougradouro", SqlDbType.NVarChar).Value = endereco.lougradouro;
                cmd.Parameters.Add("@numero", SqlDbType.NVarChar).Value = endereco.numero;
                cmd.Parameters.Add("@complemento", SqlDbType.NVarChar).Value = endereco.complemento;
                cmd.Parameters.Add("@bairro", SqlDbType.NVarChar).Value = endereco.bairro;
                cmd.Parameters.Add("@cep", SqlDbType.Int).Value = endereco.cep;
                cmd.Parameters.Add("@enderecoEmpresaId", SqlDbType.Int).Value = endereco.enderecoEmpresa_id;
                cmd.ExecuteNonQuery();
                return true;
            }
            catch (Exception)
            {
                return false;
            }
            finally
            {
                Conexao.getConexao().Close();
            }
        }
    }
}
